Telegram Group & Telegram Channel
AutoML-Zero [2020] - когда оракул помогает поиску.

Можно ли с нуля и без априорных знаний сгенерировать код нейронной сети? Оказывается, в целом можно.

Применяем эволюционный поиск программ:
1) Задаём базовую структуру программы: нам нужно обучить 3 куска кода - для инициализации, для шага обучения и применения. То, как они используется, заранее задано, там простой train-loop. То есть одна программа это реализация трёх функций.
2) Определяем набор операций, которые можно использовать - берём базовые математические операции над скалярами, матрицами и векторами. И добавляем возможность самому инициализировать новые такие объекты.
3) Поддерживаем "популяцию" из N программ
4) В процессе оптимизации берём программы и применяем к ним мутации (случайно добавляем/удаляем/изменяем команду или другие случайные изменения)
5) Оцениваем новые программы, прогоняя процесс обучения, оставляем удачные варианты в популяции.
6) Прогоняем триллион программ в рамках оптимизации и готово!

Важно заметить, что несмотря на случайную природу мутаций, AutoML-Zero ищет программу быстрее (экспоненциально), чем нашёл бы простой случайный поиск программ. Ключом тут является способность эволюционного алгоритма закреплять локальный успех.

Но каждый локальный успех по отдельности это миллиарды экспериментов - например, понадобилось 10^10 программ, чтобы собрать линейную модель. Поэтому такой подход имеет узкие рамки для использования.

Но зато всё это крайне весело.

@knowledge_accumulator



tg-me.com/knowledge_accumulator/38
Create:
Last Update:

AutoML-Zero [2020] - когда оракул помогает поиску.

Можно ли с нуля и без априорных знаний сгенерировать код нейронной сети? Оказывается, в целом можно.

Применяем эволюционный поиск программ:
1) Задаём базовую структуру программы: нам нужно обучить 3 куска кода - для инициализации, для шага обучения и применения. То, как они используется, заранее задано, там простой train-loop. То есть одна программа это реализация трёх функций.
2) Определяем набор операций, которые можно использовать - берём базовые математические операции над скалярами, матрицами и векторами. И добавляем возможность самому инициализировать новые такие объекты.
3) Поддерживаем "популяцию" из N программ
4) В процессе оптимизации берём программы и применяем к ним мутации (случайно добавляем/удаляем/изменяем команду или другие случайные изменения)
5) Оцениваем новые программы, прогоняя процесс обучения, оставляем удачные варианты в популяции.
6) Прогоняем триллион программ в рамках оптимизации и готово!

Важно заметить, что несмотря на случайную природу мутаций, AutoML-Zero ищет программу быстрее (экспоненциально), чем нашёл бы простой случайный поиск программ. Ключом тут является способность эволюционного алгоритма закреплять локальный успех.

Но каждый локальный успех по отдельности это миллиарды экспериментов - например, понадобилось 10^10 программ, чтобы собрать линейную модель. Поэтому такой подход имеет узкие рамки для использования.

Но зато всё это крайне весело.

@knowledge_accumulator

BY Knowledge Accumulator




Share with your friend now:
tg-me.com/knowledge_accumulator/38

View MORE
Open in Telegram


Knowledge Accumulator Telegram | DID YOU KNOW?

Date: |

The global forecast for the Asian markets is murky following recent volatility, with crude oil prices providing support in what has been an otherwise tough month. The European markets were down and the U.S. bourses were mixed and flat and the Asian markets figure to split the difference.The TSE finished modestly lower on Friday following losses from the financial shares and property stocks.For the day, the index sank 15.09 points or 0.49 percent to finish at 3,061.35 after trading between 3,057.84 and 3,089.78. Volume was 1.39 billion shares worth 1.30 billion Singapore dollars. There were 285 decliners and 184 gainers.

Knowledge Accumulator from us


Telegram Knowledge Accumulator
FROM USA